《Fundamentals of Computer Grahpics》虎书第三版翻译

您所在的位置:网站首页 虎书 计算机图形学 《Fundamentals of Computer Grahpics》虎书第三版翻译

《Fundamentals of Computer Grahpics》虎书第三版翻译

2024-07-15 15:59| 来源: 网络整理| 查看: 265

大部分图形学只是把数学直接转化成代码。数学越清晰,对生成的代码越清晰;这本书的大部分内容都集中在如何正确的使用数学。本章回顾了高中和大学数学中的各种工具,旨在作为参考而不是教程。这本书的主题看起来像是大杂烩,事实也确实如此。之所以这样选择主题,是因为它与“标准”数学课程不同,因为它在图形学中至关重要,或者因为它通常不是从几何角度来处理的。除了回顾之前学过的符号,这一章还强调了一些在标准本科课程中有时会被跳过的要点,如三角形的重心坐标。本章并不打算对材质进行严格的处理;而是注重直觉和几何解释。线性代数的讨论将推迟到第五章变换矩阵那里。我们鼓励读者略读本章,以熟悉本章所涵盖的主题,并在需要时参考本章。本章末尾有提供练习。

2.1集合和映射

映射,也称函数,是数学和编程的基础。像程序中的函数,数学中的映射采用一种类型的参数,并且将其映射到(返回)特定类型的的对象。在程序中,我们说”类型”,在数学上我们会认为是集合。当我们有一个对象是一个集合的成员,我们会使用∈ 符号,例如a∈S。可以读作”a是集合S的成员”。给定任意两个集合A和B,我们可以通过对两个集合笛卡尔积来创建第三个集合,记为A×B。这个A×B集合由所有可能的有序对(a,b)组成,其中a∈A,b∈B。我们可以符号A2来表示A×A的简写。我们可以由三个集合用笛卡尔积来创建一个中所有可能的有序三元组组成的集合,以此类推,所以在任意多个集合中可以创建任意长有序元组。 常见的集合包括: R–实数 R+------否负实数(包括零) R²-------实二维平面的有序对 R--------多维笛卡尔空间中的点 Z--------整数 S²-------三维点的集合(R³中的点)和它们之间的关系

注意,尽管S²由嵌入三维空间的点组成,但它们位于一个可以用两个变量参数化的曲面上,所以它可以被认为是一个2D集合。映射表示法使用箭头和冒号,例如: f:R -> Z 你可以把它理解为“有一个叫做f的函数,它接受一个实数作为输入,并将其映射为整数。”在这里,箭头之前的集合叫做函数的定义域,右边的集合叫做值域。计算机程序员可能更习惯于以下等价的语言:“有一个被称为f的函数,它有一个实参数并返回一个整数。”换句话说,上面的集合表示法等价于通用的编程表示法 Integer f(real) f:R -> Z 因此,冒号-箭头符号可以被认为是一种编程语法。就是这么简单。 点 f(a) 称为 a 的图像, 集合A(域的子集)的图像是包含A中所有点图像的值域子集。 整个定义域的图像称为函数的值域。

2.1.1逆映射 如果我们有一个函数f: a →B,可以存在是一个反函数f-1:B→a的定义,由f−1(B) =a 得到b=f(a)。这个定义仅当每个b∈B是f下某一点的图像(即取值范围等于目标),且只有一个这样的点(即只有一个f(a) =b)才成立。这样的映射或函数称为双射。双射映射每a∈A到A存在唯一的b∈B、且b∈b 而且每b∈ B、 只有一个a∈ A. 一组骑手和马之间的双射表示每个人骑一匹马,并且每匹马都有人骑。两个函数将是 骑手(马) 和 马(骑手)。这些是彼此的反函数。非双射函数没有逆函数。 双射的一个例子是f:R→ R、 f(x)=x³。反函数为f−1(x)=3√x,。这个例子表明,标准的表示法可能会难处理,因为x在f和f-1中都用作伪变量. 有时使用不同的伪变量更直观表示y=f(x)和 x=f−1(y)。这将产生更直观的y=x³和x=3√Y。 一个没有逆函数的例子是sqr:R→ R、 其中sqr(x)=x²。这有两个原因: 第一个是x²=(−x)² 第二个是定义域中没有成员映射到值域的负数部分。注意,如果我们将定义域和值域限制为R+。则√x会是一个有效的逆。 在这里插入图片描述

函数g没有反函数,因为d的两个元素映射到同一个元素上。函数h也没有反函数,因 集合F中的元素T没有d的元映射到它。

2.1.2 区间

通常我们希望指定一个函数处理的实数是 在价值上受到限制。其中一个约束是指定间隔。一个例子 区间是介于0和1之间的实数,不包括0或1。 我们表示这个(0,1)。因为它不包括它的端点,所以它被引用 作为一个开放的间歇。相应的闭合区间,该区间不包含其 端点,用方括号表示:[0,1]。此符号可以混合使用,即:。, [0,1)包括零但不包括一。当写入区间[a,b]时,我们假设 A.≤ b、 图2.3显示了表示间隔的三种常用方法。 通常使用区间的笛卡尔积。例如,表示 点x在三维的单位立方体中,我们称之为x∈ [0, 1]³

2.1.3 对数 虽然现在不像计算器出现之前那样普遍,但对数是在有指数项的方程中很有用的。根据定义每个对数都以a为底。根据定义,每个对数都以a为底。log以a为底X的对数写成logaX,它的定义是“取a才能得到x的指数,即

在这里插入图片描述

注意,对数的底数和幂函数互为反函数。这个基本定义有几个结果 在这里插入图片描述

当我们用微积分来计算对数的时候,经常会有e=2.718…出现。以e为底的对数叫做自然对数。我们采用常用的简写ln表示它: 在这里插入图片描述

注意,“≡”符号可以被理解为“根据定义是等效的”。和π一样,e这个特殊的数字也会在相当多的情况下出现。许多字段除了使用e以外还使用一个特定的基来进行操作,并且在它们的表示中省略了基,即,logX。例如,天文学家经常使用10进制,而理论计算机科学家经常使用2进制。因为计算机图形学采用了许多领域的技术所以我们会避免使用这些简写。

对数和指数的导数说明了为什么自然对数是“自然的”: 在这里插入图片描述

上面的常数乘数只在a=e时是单位的。(个人注解:当x=e的时候就是以e为底e的对数,就是1)

2.2解二元一次方程

二元一次方程形式如下: Ax² + Bx + C = 0, 其中x是一个真正的未知数,而A,B,C是已知的常数。假设想象一个二维xy坐标图有y = Ax² + Bx + C的,它的解是任意x值在y轴上相交为零,因为y = Ax² + Bx + C是一条抛物线 ,所以会有0,1或者2个实数根取决于抛物线是否相离,相切,相交于x轴。为了解析解二次方程,我们先除以A: 在这里插入图片描述

然后我们对式子配方(“complete the square”):

在这里插入图片描述

把常数部分移到右边然后开方 在这里插入图片描述

等式两边同时减去B/(2A),然后用分母2A将各项分组,得到熟悉的形式: 在这里插入图片描述

这里的“±”符号表示有两个解,一个带加号和一个带负号的。因此3±1等于“2或4”。注意,决定是否存在实数解的项是 在这里插入图片描述

这被称为二元一次方程的判别式。如果D > 0,有两个实数解(也称为根)。如果D = 0,有一个实解(二重根(a “double”root))。如果D < 0,就没有实数解。

例如,2x² + 6x +4=0的根是x =−1和x =−2 方程x²+x+1=0没有实数解。这些方程的判别式是D = 4和D =-3,因此我们期望给出的解的数量。 在程序中,如果D是负的,最好先求D的值,然后返回“无根”,而不开平方根

2.3 三角函数

在图形学中,我们在许多情况下使用基本的三角学。通常情况下,这并不是什么花哨的事情,记住基本的定义往往会有所帮助

2.3.1角度 虽然我们认为角度是理所当然的,但我们应该回到它们的定义,这样我们就可以把角度的概念扩展到球面上。在两条半线(来自原点的无限射线)或方向之间形成一个角度,必须使用某种约定来决定它们之间产生的角度的两种可能性,如图2.6所示。角是由它在单位圆上所切出的弧段的长度来定义的。一个常见的约定是使用较小的弧长,角的符号是由指定的两个半线的顺序决定的。根据这个约定,所有角度都在[−π, π]范围内。 在这里插入图片描述

两条半线把单位圆切成两条弧。任一弧的长度是两条半线之间的有效夹角。要么我们可以使用较小的长度是角的约定,要么这两条半线是按照一定的顺序指定的且决定角φ的弧是从第一到第二半线的逆时针方向扫出的弧

这些角中的每一个角都是被两个方向“切割”的单位圆的弧长。因为单位圆的周长是2π,这两个是可能的角的和是2π。这些弧长的单位是弧度。另一个常用的单位是度,圆的周长是360度。因此,π弧度的角是180度,通常表示为180◦。角度和弧度的转换是

2.3.2三角函数 给定一个边长分别为a,o,h的直角三角形,其中h是最长的边(对角边)或者叫斜边,一个重要的关系是勾股定理: 在这里插入图片描述

你可以从图2.7中准确的看到,其中大正方形的面积(a+o)²。 四个三角形的总面积为2ao,中心正方形的总面积为h²。 因为三角形和内正方形均匀地分割较大的正方形, 我们有2ao + h² = (a + o)²,它很容易被处理成上面的形式。 在这里插入图片描述

我们定义了φ的正弦和余弦,以及其他基于比率的三角表达式: sin φ ≡ o/h; csc φ ≡ h/o; cos φ ≡ a/h; sec φ ≡ h/a; tan φ ≡ o/a; cot φ ≡ a/o

***全是数学我摆烂了,主要是公式难翻译,而且数学不用看这本书 ***


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3